/*
 * @Author: 冯向博
 * @Date: 2021-10-20 13:49:54
 * @LastEditTime: 2021-10-29 14:40:59
 */
// /common/http.api.js

// 此处第二个参数vm，就是我们在页面使用的this，你可以通过vm获取vuex等操作，更多内容详见uView对拦截器的介绍部分：
// https://uviewui.com/js/http.html#%E4%BD%95%E8%B0%93%E8%AF%B7%E6%B1%82%E6%8B%A6%E6%88%AA%EF%BC%9F
const install = (Vue, vm) => {
  vm.$u.api = {}
  // 首页
  vm.$u.api.index = (params = {}) => vm.$u.get('/api/index', params);

  // 认证相关的接口
  vm.$u.api.authLogin = params => vm.$u.post('/api/auth/login', params); //登录
  vm.$u.api.authRegister = params => vm.$u.post('api/auth/register', params) // 注册
  vm.$u.api.authLogout = () => vm.$u.post('/api/auth/logout') // 登出
  vm.$u.api.authOssToken = () => vm.$u.get('/api/auth/oss/token') // 获取 oss token

  // 用户相关的接口
  vm.$u.api.userInfo = () => vm.$u.get('/api/user'); // 用户详情
  vm.$u.api.userInfoUpdate = params => vm.$u.put('/api/user', params); // 更新用户信息
  vm.$u.api.userAvatar = params => vm.$u.patch('/api/user/avatar', params); // 用户头像
  // 将各个定义的接口名称，统一放进对象挂载到vm.$u.api(因为vm就是this，也即this.$u.api)下
  // vm.$u.api = { index, authLogin };
}

export default {
  install
}